package org.dei.perla.sys.device.fpc.dspic.datastructures;

import org.dei.perla.utils.dataconverter.annotations.CompositeField;
import org.dei.perla.utils.dataconverter.annotations.FixedLengthArray;
import org.dei.perla.utils.dataconverter.annotations.SimpleField;
import org.dei.perla.utils.dataconverter.annotations.StructInfo;
import org.dei.perla.utils.dataconverter.enums.Endianness;
import org.dei.perla.utils.dataconverter.enums.Sign;

@StructInfo(endianness = Endianness.LITTLE_ENDIAN, totalStructSize = DSPicDefines.DSPIC_ON_EVENT_SAMPLING_SIZE)
public class DSPicOnEventData {

	@SimpleField(size = 2, sign = Sign.UNSIGNED)
	private int	numEvents;

	@FixedLengthArray(length = DSPicDefines.EVENT_DATA_INFORMATION_NUMBER)
	@CompositeField(size = DSPicDefines.EVENT_DATA_INFORMATION_SIZE)
	private ED eventData[];

	@SimpleField(size = 2, sign = Sign.UNSIGNED)
	private int eventDataCount;

	@FixedLengthArray(length = DSPicDefines.DSPIC_EVENT_DATA_SAMPLES_ON_EVENT_SAMPLING_SIZE)
	@SimpleField(size = 1, sign = Sign.SIGNED)
	private byte eventDataSamples[];
	
	public DSPicOnEventData() {
		
	}

	public int getNumEvents() {
		return numEvents;
	}

	public void setNumEvents(int numEvents) {
		this.numEvents = numEvents;
	}

	public ED[] getEventData() {
		return eventData;
	}

	public void setEventData(ED[] eventData) {
		this.eventData = eventData;
	}

	public int getEventDataCount() {
		return eventDataCount;
	}

	public void setEventDataCount(int eventDataCount) {
		this.eventDataCount = eventDataCount;
	}

	public byte[] getEventDataSamples() {
		return eventDataSamples;
	}

	public void setEventDataSamples(byte[] eventDataSamples) {
		this.eventDataSamples = eventDataSamples;
	}
	
}
